Public Class VALIDACION
    Dim ban, ban2 As Byte
    Dim letra As String


    Public Function LETRAS_CON_SEPARACIONES(ByVal texto As String) As Boolean

        If Char.IsLetter(CChar(texto)) Or Char.IsSeparator(CChar(texto)) Or Char.IsControl(CChar(texto)) Or Char.IsPunctuation(CChar(texto)) Then
            Return False ' no lo manejo
        Else
            Return True 'lo manejo
        End If

    End Function

    Public Function LETRAS_sin_SEPARACIONES(ByVal texto As String) As Boolean

        If Char.IsLetter(CChar(texto)) Or Char.IsControl(CChar(texto)) Or Char.IsPunctuation(CChar(texto)) Then
            Return False ' no lo manejo
        Else
            Return True 'lo manejo
        End If

    End Function

    Public Function TELEFONO(ByVal texto As String) As Boolean

        If Char.IsNumber(CChar(texto)) Or Char.IsControl(CChar(texto)) Or CChar(texto) = "-" Then
            Return False ' no lo manejo
        Else
            Return True 'lo manejo
        End If

    End Function


    Public Function Email(ByVal texto As String) As Boolean
        letra = letra & texto
        If Asc(texto) = 8 Then ' presiono borrar
            Dim x As Byte
            For x = 0 To Convert.ToByte(letra.Length - 1) 'busco si hubo un arroba 
                If letra.Substring(x, 1) = "@" Then 'si hubo y lo borre inicializo la bandera del arroba
                    ban = 0
                End If
                'If letra.Substring(x, 1) = "." And ban = 1 Then
                '    ban2 = 0
                'End If
            Next
        ElseIf Char.IsSeparator(CChar(texto)) Or CChar(texto) = "@" And ban = 1 Then
            Return True ' lo manejo (ya que un email no debe tener espacios en blanco )

        ElseIf CChar(texto) = "@" And ban = 0 Then
            ban = 1 'bandera(solo de haber un solo arroba (@))


        ElseIf CChar(texto) = "." And ban = 1 And ban2 < 2 Then
            ban2 += Convert.ToByte(1)

        ElseIf ban2 = 2 And CChar(texto) = "." Then
            Return True  'permito solo 2 comas despues del arroba
        End If

    End Function


    Public Function NUMEROS__SIN_SEPARACION(ByVal texto As String) As Boolean

        If Char.IsNumber(CChar(texto)) Or Char.IsControl(CChar(texto)) Then
            Return False ' no lo manejo
        Else
            Return True 'lo manejo
        End If

    End Function

    Public Function NUM_DECIMALES_SIN_SEPARACION(ByVal texto As String) As Boolean

        If Char.IsNumber(CChar(texto)) Or Char.IsControl(CChar(texto)) Or CChar(texto) = "," Then
            Return False ' no lo manejo
        Else
            Return True 'lo manejo
        End If

    End Function


    Public Function NUMEROS_CON_SEPARACION(ByVal texto As String) As Boolean

        If Char.IsNumber(CChar(texto)) Or Char.IsControl(CChar(texto)) Or Char.IsSeparator(CChar(texto)) Then
            Return False ' no lo manejo
        Else
            Return True 'lo manejo
        End If

    End Function


    Public Function ALFANUMERICO_CON_SEPARACION(ByVal texto As String) As Boolean
        If Char.IsLetter(CChar(texto)) Or Char.IsControl(CChar(texto)) Or Char.IsSeparator(CChar(texto)) Or Char.IsPunctuation(CChar(texto)) Then
            Return False ' no lo manejo
        Else
            Return True  'entonces lo filtr5o
        End If
    End Function

    Public Function ALFANUMERICO_SIN_SEPARACION(ByVal texto As String) As Boolean
        If Char.IsLetter(CChar(texto)) Or Char.IsControl(CChar(texto)) Then
            Return False ' no lo manejo
        Else
            Return True  'entonces lo filtr5o
        End If
    End Function

    Public Function MAYUSCULAS(ByVal texto As String) As Boolean
        If Char.IsUpper(CChar(texto)) Or Char.IsControl(CChar(texto)) Then
            Return False ' no lo mandejo
        Else
            Return True  'entonces lo filtr5o
        End If
    End Function


    Public Function minusculas(ByVal texto As String) As Boolean
        If Char.IsLower(CChar(texto)) Or Char.IsControl(CChar(texto)) Then
            Return False ' no lo manejo
        Else
            Return True  'entonces lo filtr5o
        End If
    End Function


    Public Sub Dispose()
        MyBase.Finalize()
    End Sub

    Public Sub New()
        MyBase.New()
    End Sub


End Class
